{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Recursive resumable function\n",
    "\n",
    "Example provided by @mohamed82008"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Description\n",
    "\n",
    "Given a vector with as elements values or other vectors, iterate over all the values, i.e. $a=[[1, 2, 3], [4, 5, 6]]$ will have as output an iterator containing the elements $1, 2, 3, 4, 5, 6$."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Package installation"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating METADATA...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of AbstractFFTs...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of PaddedViews...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of ColorTypes...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of CategoricalArrays...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of Cairo...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of Blink...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of StatsBase...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of IJulia...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of PkgBenchmark...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of BenchmarkTools...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of HttpParser...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of Atom...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of NaNMath...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of PlotlyJS...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of SimpleTraits...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of WeakRefStrings...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of LightGraphs...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of HttpCommon...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of FixedPointNumbers...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of FileIO...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of Juno...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of Compat...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of SHA...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of Missings...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of OffsetArrays...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of Interact...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of HttpServer...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of AxisArrays...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating cache of Documenter...\n",
      "\u001b[39m\u001b[1m\u001b[33mWARNING: \u001b[39m\u001b[22m\u001b[33mPackage ResumableFunctions: skipping update (dirty)...\u001b[39m\n",
      "\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpdating SimJulia master...\n",
      "\u001b[39m\u001b[1m\u001b[33mWARNING: \u001b[39m\u001b[22m\u001b[33mPackage QuantizedStateSystems: skipping update (dirty)...\u001b[39m\n",
      "\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mComputing changes...\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mCloning cache of PlotlyBase from https://github.com/sglyon/PlotlyBase.jl.git\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mCloning cache of ProgressMeter from https://github.com/timholy/ProgressMeter.jl.git\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading AbstractFFTs: v0.2.1 => v0.3.0\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading Atom: v0.6.6 => v0.6.9\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading AxisArrays: v0.2.0 => v0.2.1\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading BenchmarkTools: v0.2.4 => v0.2.5\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading Blink: v0.6.0 => v0.6.2\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading Cairo: v0.4.0 => v0.5.0\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading CategoricalArrays: v0.3.3 => v0.3.4\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading ColorTypes: v0.6.6 => v0.6.7\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading Compat: v0.49.0 => v0.54.0\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading Documenter: v0.13.0 => v0.13.2\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading FileIO: v0.6.1 => v0.7.0\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading FixedPointNumbers: v0.4.3 => v0.4.6\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading HttpCommon: v0.3.0 => v0.4.0\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading HttpParser: v0.3.0 => v0.3.1\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading HttpServer: v0.2.0 => v0.3.0\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading IJulia: v1.6.2 => v1.7.0\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading Interact: v0.6.3 => v0.6.4\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading Juno: v0.3.2 => v0.4.0\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading LightGraphs: v0.11.1 => v0.12.0\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading MbedTLS: v0.5.4 => v0.5.5\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading Missings: v0.2.5 => v0.2.7\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading NaNMath: v0.3.0 => v0.3.1\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading OffsetArrays: v0.4.2 => v0.5.0\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading PaddedViews: v0.2.0 => v0.3.0\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading PkgBenchmark: v0.0.2 => v0.1.0\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mInstalling PlotlyBase v0.1.1\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading PlotlyJS: v0.9.0 => v0.10.1\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mInstalling ProgressMeter v0.5.4\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading SHA: v0.5.3 => v0.5.6\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading SimpleTraits: v0.5.1 => v0.6.0\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading StatsBase: v0.19.5 => v0.20.0\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mUpgrading WeakRefStrings: v0.4.1 => v0.4.2\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mRemoving Blosc v0.3.0\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mRemoving HDF5 v0.8.8\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mRemoving JLD v0.8.3\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mRemoving LegacyStrings v0.3.0\n",
      "\u001b[39m\u001b[1m\u001b[33mWARNING: \u001b[39m\u001b[22m\u001b[33mThe following packages have been updated but were already imported:\n",
      "- Compat\n",
      "- IJulia\n",
      "- MbedTLS\n",
      "Restart Julia to use the updated versions.\u001b[39m\n",
      "\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mBuilding HttpParser\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mBuilding Homebrew\n",
      "\u001b[39m"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Updated 2 taps (homebrew/science, homebrew/core).\n",
      "==> New Formulae\n",
      "ballerina\n",
      "bareos-client\n",
      "boost-python3\n",
      "calicoctl\n",
      "chrome-export\n",
      "clblast\n",
      "console_bridge\n",
      "container-diff\n",
      "coreos-ct\n",
      "dartsim\n",
      "dashing\n",
      "dynare\n",
      "fcl\n",
      "fruit\n",
      "futhark\n",
      "go@1.9\n",
      "gocryptfs\n",
      "gpredict\n",
      "grv\n",
      "howdoi\n",
      "krakend\n",
      "kube-ps1\n",
      "libbitcoin-consensus\n",
      "libccd\n",
      "libdill\n",
      "libsbol\n",
      "mafft\n",
      "mariadb-connector-odbc\n",
      "mdcat\n",
      "nyx\n",
      "ocrmypdf\n",
      "odpi\n",
      "openimageio\n",
      "posh\n",
      "primer3\n",
      "qtkeychain\n",
      "restview\n",
      "shelltestrunner\n",
      "shogun\n",
      "siril\n",
      "srt\n",
      "terraforming\n",
      "tomcat@8\n",
      "unravel\n",
      "urdfdom\n",
      "urdfdom_headers\n",
      "webtorrent-cli\n",
      "zig\n",
      "==> Updated Formulae\n",
      "abcm2ps\n",
      "abcmidi\n",
      "abnfgen\n",
      "acmetool\n",
      "acpica\n",
      "advancecomp\n",
      "advancemame\n",
      "akamai\n",
      "allure\n",
      "alot\n",
      "amber\n",
      "angular-cli\n",
      "ansible\n",
      "ant\n",
      "apache-geode\n",
      "apibuilder-cli\n",
      "apm-server\n",
      "app-engine-java\n",
      "aqbanking\n",
      "arangodb\n",
      "argyll-cms\n",
      "armadillo\n",
      "armor\n",
      "artifactory\n",
      "asciinema\n",
      "asdf\n",
      "audacious\n",
      "auditbeat\n",
      "augeas\n",
      "autogen\n",
      "aws-elasticbeanstalk\n",
      "aws-sdk-cpp\n",
      "awscli\n",
      "azure-cli\n",
      "babl\n",
      "bandcamp-dl\n",
      "baresip\n",
      "bartycrouch\n",
      "bash\n",
      "bazel\n",
      "bcftools\n",
      "bdw-gc\n",
      "bee\n",
      "bfg\n",
      "bigloo\n",
      "binaryen\n",
      "bind\n",
      "binutils\n",
      "bit\n",
      "bitrise\n",
      "blast\n",
      "blueutil\n",
      "boost-python\n",
      "bork\n",
      "bowtie2\n",
      "braid\n",
      "brew-gem\n",
      "bro\n",
      "btfs\n",
      "buildapp\n",
      "burp\n",
      "byteman\n",
      "bzt\n",
      "c-ares\n",
      "caddy\n",
      "calabash\n",
      "calc\n",
      "camlp5\n",
      "cargo-completion\n",
      "carthage\n",
      "cask\n",
      "cassandra\n",
      "cayley\n",
      "ccache\n",
      "ccm\n",
      "certbot\n",
      "cfr-decompiler\n",
      "cfssl\n",
      "cgrep\n",
      "chakra\n",
      "checkstyle\n",
      "chibi-scheme\n",
      "chocolate-doom\n",
      "chromaprint\n",
      "chronograf\n",
      "chuck\n",
      "cimg\n",
      "citus\n",
      "cjdns\n",
      "clamav\n",
      "clang-format\n",
      "clhep\n",
      "cloc\n",
      "clojure\n",
      "cloog\n",
      "closure-compiler\n",
      "cockroach\n",
      "coffeescript\n",
      "collector-sidecar\n",
      "conan\n",
      "conjure-up\n",
      "consul\n",
      "coq\n",
      "cppad\n",
      "cpprestsdk\n",
      "cromwell\n",
      "crowdin\n",
      "cryfs\n",
      "cryptopp\n",
      "crystal-icr\n",
      "crystal-lang\n",
      "curl\n",
      "daemonize\n",
      "darksky-weather\n",
      "davmail\n",
      "dbhash\n",
      "dbus\n",
      "dbus-glib\n",
      "dcmtk\n",
      "ddrescue\n",
      "dep\n",
      "dependency-check\n",
      "dfmt\n",
      "dhall-json\n",
      "diamond\n",
      "digdag\n",
      "dislocker\n",
      "django-completion\n",
      "dlib\n",
      "dmd\n",
      "dnscrypt-proxy\n",
      "dnscrypt-wrapper\n",
      "docfx\n",
      "docker\n",
      "docker-completion\n",
      "docker-compose\n",
      "dpkg\n",
      "dscanner\n",
      "dssim\n",
      "dtc\n",
      "dub\n",
      "duck\n",
      "duo_unix\n",
      "duplicity\n",
      "duply\n",
      "dwarfutils\n",
      "e2fsprogs\n",
      "ebook-tools\n",
      "ecl\n",
      "elasticsearch\n",
      "elasticsearch@5.6\n",
      "elixir\n",
      "elm\n",
      "embulk\n",
      "emscripten\n",
      "encfs\n",
      "enchant\n",
      "entr\n",
      "envconsul\n",
      "erlang\n",
      "etcd\n",
      "etsh\n",
      "exempi\n",
      "exiftool\n",
      "exim\n",
      "expect\n",
      "f3\n",
      "faas-cli\n",
      "fabio\n",
      "fbi-servefiles\n",
      "fd\n",
      "fdroidserver\n",
      "feedgnuplot\n",
      "feh\n",
      "ffmbc\n",
      "ffmpeg\n",
      "ffmpeg@2.8\n",
      "fibjs\n",
      "filebeat\n",
      "fio\n",
      "firebase-cli\n",
      "fizmo\n",
      "flatcc\n",
      "flow\n",
      "fltk\n",
      "fluent-bit\n",
      "fn\n",
      "folly\n",
      "fonttools\n",
      "forego\n",
      "fossil\n",
      "fox\n",
      "freedink\n",
      "freeipmi\n",
      "freeradius-server\n",
      "freeswitch\n",
      "freetds\n",
      "freexl\n",
      "fribidi\n",
      "frugal\n",
      "fuse-zip\n",
      "fwup\n",
      "gammaray\n",
      "gcc\n",
      "gcc@4.9\n",
      "gcc@5\n",
      "gcovr\n",
      "gdb\n",
      "gdnsd\n",
      "gecode\n",
      "geeqie\n",
      "gegl\n",
      "geoserver\n",
      "get-flash-videos\n",
      "getdns\n",
      "geth\n",
      "gexiv2\n",
      "gforth\n",
      "gifski\n",
      "ginac\n",
      "git\n",
      "git-archive-all\n",
      "git-extras\n",
      "git-fresh\n",
      "git-ftp\n",
      "git-imerge\n",
      "git-standup\n",
      "git-town\n",
      "gitbucket\n",
      "github-keygen\n",
      "gitlab-runner\n",
      "gitless\n",
      "gjs\n",
      "glade\n",
      "glbinding\n",
      "global\n",
      "glpk\n",
      "gnupg\n",
      "gnutls\n",
      "go\n",
      "go@1.8\n",
      "godep\n",
      "goenv\n",
      "gollum\n",
      "gomplate\n",
      "googler\n",
      "gopass\n",
      "gource\n",
      "gpatch\n",
      "gradle\n",
      "grakn\n",
      "graphene\n",
      "graphicsmagick\n",
      "groonga\n",
      "grpc\n",
      "gsoap\n",
      "gtk+3\n",
      "guile\n",
      "guile@2.0\n",
      "gutenberg\n",
      "gwenhywfar\n",
      "gwyddion\n",
      "gxml\n",
      "hadolint\n",
      "hadoop\n",
      "haproxy\n",
      "harfbuzz\n",
      "hashcat\n",
      "haskell-stack\n",
      "hatari\n",
      "haxe\n",
      "heartbeat\n",
      "heroku\n",
      "hg-fast-export\n",
      "highlight\n",
      "hlint\n",
      "hostess\n",
      "html-xml-utils\n",
      "htmldoc\n",
      "htop\n",
      "htslib\n",
      "http-parser\n",
      "hubflow\n",
      "huexpress\n",
      "hugo\n",
      "hwloc\n",
      "hyperscan\n",
      "i2p\n",
      "ice\n",
      "ideviceinstaller\n",
      "igv\n",
      "imagemagick\n",
      "imagemagick@6\n",
      "imagesnap\n",
      "infer\n",
      "influxdb\n",
      "innotop\n",
      "inspectrum\n",
      "iperf3\n",
      "iron-functions\n",
      "irssi\n",
      "isc-dhcp\n",
      "javarepl\n",
      "jenkins\n",
      "jenkins-job-builder\n",
      "jenkins-lts\n",
      "jfrog-cli-go\n",
      "jhiccup\n",
      "jhipster\n",
      "jmeter\n",
      "joplin\n",
      "jruby\n",
      "juju\n",
      "just\n",
      "jvgrep\n",
      "jvm-mon\n",
      "kaitai-struct-compiler\n",
      "kallisto\n",
      "kedge\n",
      "khard\n",
      "kibana\n",
      "kibana@5.6\n",
      "kitchen-sync\n",
      "kite\n",
      "knot\n",
      "knot-resolver\n",
      "kobalt\n",
      "kompose\n",
      "kops\n",
      "kotlin\n",
      "kubeless\n",
      "kubernetes-cli\n",
      "kubernetes-helm\n",
      "lame\n",
      "landscaper\n",
      "latex2html\n",
      "lbdb\n",
      "ldns\n",
      "leaps\n",
      "ledit\n",
      "leptonica\n",
      "less\n",
      "libav\n",
      "libbitcoin\n",
      "libbitcoin-blockchain\n",
      "libbitcoin-database\n",
      "libbitcoin-explorer\n",
      "libbitcoin-node\n",
      "libbitcoin-server\n",
      "libebur128\n",
      "libgee\n",
      "libgtop\n",
      "libhttpseverywhere\n",
      "libical\n",
      "liblwgeom\n",
      "libmicrohttpd\n",
      "libmpdclient\n",
      "libphonenumber\n",
      "libpq\n",
      "libpqxx\n",
      "libraw\n",
      "librealsense\n",
      "librsvg\n",
      "libsass\n",
      "libspatialite\n",
      "libstrophe\n",
      "libtensorflow\n",
      "libtiff\n",
      "libtrng\n",
      "libupnp\n",
      "libuv\n",
      "libvpx\n",
      "libxlsxwriter\n",
      "libzip\n",
      "libzzip\n",
      "liquibase\n",
      "llvm\n",
      "lnav\n",
      "log4cplus\n",
      "logentries\n",
      "logstalgia\n",
      "logstash\n",
      "lumo\n",
      "lynis\n",
      "lysp\n",
      "lzip\n",
      "lzlib\n",
      "macvim\n",
      "magic-wormhole\n",
      "makensis\n",
      "mame\n",
      "mapnik\n",
      "mariadb\n",
      "mariadb-connector-c\n",
      "mariadb@10.0\n",
      "mariadb@10.1\n",
      "mas\n",
      "mbedtls\n",
      "memcached\n",
      "mercurial\n",
      "meson\n",
      "metabase\n",
      "metricbeat\n",
      "mgba\n",
      "micro\n",
      "micropython\n",
      "mikutter\n",
      "mingw-w64\n",
      "minimal-racket\n",
      "minio-mc\n",
      "minisign\n",
      "miniupnpc\n",
      "mitmproxy\n",
      "mlt\n",
      "mlton\n",
      "mockserver\n",
      "modules\n",
      "monetdb\n",
      "mongodb@3.0\n",
      "mongodb@3.2\n",
      "mongodb@3.4\n",
      "mongoose\n",
      "mp3gain\n",
      "mpc\n",
      "mpd\n",
      "mpdas\n",
      "mpfr\n",
      "mps-youtube\n",
      "mpv\n",
      "mrboom\n",
      "mu\n",
      "multimarkdown\n",
      "mutt\n",
      "mytop\n",
      "nailgun\n",
      "nano\n",
      "nasm\n",
      "ncdu\n",
      "nco\n",
      "ncurses\n",
      "neko\n",
      "neovim\n",
      "netcdf\n",
      "netpbm\n",
      "nghttp2\n",
      "nginx\n",
      "node\n",
      "node-build\n",
      "node@6\n",
      "nsd\n",
      "nss\n",
      "nuget\n",
      "numpy\n",
      "ocaml\n",
      "ocaml-num\n",
      "ocamlsdl\n",
      "octave\n",
      "oniguruma\n",
      "ooniprobe\n",
      "opendetex\n",
      "openrct2\n",
      "openrtsp\n",
      "orc-tools\n",
      "ortp\n",
      "osm2pgrouting\n",
      "osquery\n",
      "p7zip\n",
      "packer\n",
      "packetbeat\n",
      "paket\n",
      "pandoc-citeproc\n",
      "parallel\n",
      "passenger\n",
      "pc6001vx\n",
      "pcb\n",
      "pdal\n",
      "pdns\n",
      "pdnsrec\n",
      "pegtl\n",
      "percona-server\n",
      "percona-server@5.6\n",
      "percona-toolkit\n",
      "percona-xtrabackup\n",
      "pgpool-ii\n",
      "phoronix-test-suite\n",
      "picard-tools\n",
      "picocom\n",
      "pilosa\n",
      "pinentry\n",
      "pioneer\n",
      "pipenv\n",
      "pjproject\n",
      "planck\n",
      "plank\n",
      "plantuml\n",
      "plzip\n",
      "pmd\n",
      "postgresql\n",
      "postgresql@9.4\n",
      "postgresql@9.5\n",
      "postgresql@9.6\n",
      "pre-commit\n",
      "presto\n",
      "prips\n",
      "proguard\n",
      "pspg\n",
      "pwntools\n",
      "py2cairo\n",
      "py3cairo\n",
      "pybind11\n",
      "pyinvoke\n",
      "pyqt\n",
      "python\n",
      "python-markdown\n",
      "qemu\n",
      "qpdf\n",
      "qpid-proton\n",
      "qt\n",
      "quantlib\n",
      "questdb\n",
      "quicktype\n",
      "rabbitmq\n",
      "radare2\n",
      "rakudo-star\n",
      "ranger\n",
      "re2\n",
      "recon-ng\n",
      "redis\n",
      "restic\n",
      "rgbds\n",
      "riak\n",
      "ripgrep\n",
      "rkhunter\n",
      "rocksdb\n",
      "rom-tools\n",
      "roswell\n",
      "rsync\n",
      "rtags\n",
      "ruby\n",
      "ruby@1.8\n",
      "ruby@2.0\n",
      "ruby@2.2\n",
      "ruby@2.3\n",
      "rust\n",
      "rustup-init\n",
      "s-nail\n",
      "s-search\n",
      "s3-backer\n",
      "sagittarius-scheme\n",
      "saldl\n",
      "saltstack\n",
      "samtools\n",
      "sane-backends\n",
      "sbcl\n",
      "sbt\n",
      "sbt@0.13\n",
      "scala@2.10\n",
      "sccache\n",
      "sceptre\n",
      "schismtracker\n",
      "selenium-server-standalone\n",
      "sfk\n",
      "shadowsocks-libev\n",
      "shfmt\n",
      "simg2img\n",
      "singular\n",
      "sip\n",
      "sjk\n",
      "skafos\n",
      "sleuthkit\n",
      "snakemake\n",
      "snapcraft\n",
      "snappystream\n",
      "socat\n",
      "solr\n",
      "sonarqube\n",
      "sops\n",
      "sourcekitten\n",
      "speedtest-cli\n",
      "sphinx-doc\n",
      "spigot\n",
      "sqldiff\n",
      "sqlite\n",
      "sqlite-analyzer\n",
      "sqlmap\n",
      "sslh\n",
      "sslsplit\n",
      "sslyze\n",
      "statik\n",
      "stella\n",
      "stk\n",
      "stlink\n",
      "stockfish\n",
      "storm\n",
      "streamlink\n",
      "strongswan\n",
      "stubby\n",
      "superlu\n",
      "supervisor\n",
      "surfraw\n",
      "suricata\n",
      "svgo\n",
      "swiftformat\n",
      "swiftlint\n",
      "sword\n",
      "syncthing\n",
      "sysbench\n",
      "systemc\n",
      "taisei\n",
      "tarantool\n",
      "telegraf\n",
      "teleport\n",
      "termius\n",
      "terraform\n",
      "terragrunt\n",
      "tig\n",
      "timewarrior\n",
      "tintin\n",
      "tippecanoe\n",
      "tldr\n",
      "tokei\n",
      "tomcat\n",
      "tomee-webprofile\n",
      "traefik\n",
      "transmission\n",
      "twarc\n",
      "txr\n",
      "typescript\n",
      "ucon64\n",
      "udpxy\n",
      "udunits\n",
      "uhd\n",
      "unibilium\n",
      "unison\n",
      "uriparser\n",
      "userspace-rcu\n",
      "uwsgi\n",
      "vagrant-completion\n",
      "vala\n",
      "vapoursynth\n",
      "vault\n",
      "vdirsyncer\n",
      "verilator\n",
      "vert.x\n",
      "vifm\n",
      "vim\n",
      "vips\n",
      "vis\n",
      "w3m\n",
      "webpack\n",
      "wget\n",
      "winetricks\n",
      "wiredtiger\n",
      "wireguard-tools\n",
      "wpcli-completion\n",
      "wpscan\n",
      "wtf\n",
      "wxmaxima\n",
      "x264\n",
      "x265\n",
      "x3270\n",
      "xmake\n",
      "xmrig\n",
      "xpdf\n",
      "xrootd\n",
      "xtensor\n",
      "xxhash\n",
      "yaml-cpp\n",
      "ykman\n",
      "ykneomgr\n",
      "yle-dl\n",
      "you-get\n",
      "youtube-dl\n",
      "zabbix\n",
      "zanata-client\n",
      "zile\n",
      "zimg\n",
      "==> Renamed Formulae\n",
      "ssreflect -> math-comp\n",
      "tachyon -> alluxio\n",
      "==> Deleted Formulae\n",
      "clozure-cl\n",
      "gmp@4\n",
      "go@1.6\n",
      "go@1.7\n",
      "isl@0.12\n",
      "isl@0.14\n",
      "libmpc@0.8\n",
      "mg3a\n",
      "mpfr@2\n",
      "mvptree\n",
      "pcap_dnsproxy\n",
      "qt@5.7\n",
      "root@5\n",
      "ruby@1.9\n",
      "ruby@2.1\n",
      "talk-filters\n",
      "tomcat@8.0\n",
      "Uninstalling lame... (26 files, 2MB)\n",
      "==> Installing lame from staticfloat/juliatranslated\n",
      "==> Downloading https://homebrew.bintray.com/bottles/lame-3.100.high_sierra.bottle.tar.gz\n",
      "==> Downloading from https://akamai.bintray.com/9e/9e65c67b83efa5a686aea0506dc44935cd2af2d4fe55fe38dc19610a0ccd80dd?__gda__=exp=1519416315~hmac=4794bfc7f3488eab9015b443857ed1ba00d507b706e3fa445e23b14329649e7e&response-content-disposition=attachment%3Bfilename%3D%22lame-3.100.high_sierra.bottle.tar.gz%22&response-content-type=application%2Fgzip&requestInfo=U2FsdGVkX1_rf6gWsPIeeXTrM43_nOI5fmJQx_gHSkOY5WbWClKJ87xi8T7gfKi1wvVt80arkitGOS37Y9LBraZ7rWN7OxViGCD_KCO77ingu9023EKw64N1VIIZ4gBEtLz1WnUfrfREjJURB0R53A&response-X-Checksum-Sha1=9053438557f5fd8ce224f9a9238095aff3085738&response-X-Checksum-Sha2=9e65c67b83efa5a686aea0506dc44935cd2af2d4fe55fe38dc19610a0ccd80dd\n",
      "==> Pouring lame-3.100.high_sierra.bottle.tar.gz\n",
      "🍺  /Users/ben/.julia/v0.6/Homebrew/deps/usr/Cellar/lame/3.100: 27 files, 2.1MB\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Warning: Already linked: /Users/ben/.julia/v0.6/Homebrew/deps/usr/Cellar/lame/3.100\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Uninstalling libtiff... (246 files, 3.5MB)\n",
      "==> Installing libtiff from staticfloat/juliatranslated\n",
      "==> Downloading https://homebrew.bintray.com/bottles/libtiff-4.0.9_2.high_sierra.bottle.tar.gz\n",
      "==> Downloading from https://akamai.bintray.com/b2/b25a0893acdffc8fcbb1f9d0a2f1ef04c62f15168689fc64842cd7a36884d179?__gda__=exp=1519416322~hmac=441d091c0286c09b10af588e036551b7c643db1d8a183f8e031f3790a65b3ba4&response-content-disposition=attachment%3Bfilename%3D%22libtiff-4.0.9_2.high_sierra.bottle.tar.gz%22&response-content-type=application%2Fgzip&requestInfo=U2FsdGVkX192ROXsJ1crt7z10neyvyIWOD9rBX7yV1JKte1j3fMzAGViDBbEPaCYbIYtRdOxmtRcuAJlY-dKER1-faWgXULJ-qweQPsXd5c-da5yZT-IhPYU6m-qj3SigoSaje0RZEymdlvN5Dec-g&response-X-Checksum-Sha1=311509ebfe458dde4cae865f6279bfc01113aa70&response-X-Checksum-Sha2=b25a0893acdffc8fcbb1f9d0a2f1ef04c62f15168689fc64842cd7a36884d179\n",
      "==> Pouring libtiff-4.0.9_2.high_sierra.bottle.tar.gz\n",
      "🍺  /Users/ben/.julia/v0.6/Homebrew/deps/usr/Cellar/libtiff/4.0.9_2: 246 files, 3.5MB\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Warning: Already linked: /Users/ben/.julia/v0.6/Homebrew/deps/usr/Cellar/libtiff/4.0.9_2\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Uninstalling ffmpeg... (248 files, 50.9MB)\n",
      "==> Installing ffmpeg from staticfloat/juliatranslated\n",
      "==> Downloading https://homebrew.bintray.com/bottles/ffmpeg-3.4.2.high_sierra.bottle.tar.gz\n",
      "==> Downloading from https://akamai.bintray.com/9d/9df7c5868b825944edc80822e818028b4123ee8cdf85ef60eb11fed235b23c79?__gda__=exp=1519416330~hmac=fd02c26bcfdb2b9a7e72d98eebf74001c1731d41a4d6bac2818a23bb4c61acba&response-content-disposition=attachment%3Bfilename%3D%22ffmpeg-3.4.2.high_sierra.bottle.tar.gz%22&response-content-type=application%2Fgzip&requestInfo=U2FsdGVkX19aukLcP7nC4XymoQ7Vr0bWRQD9jl5w_GplL5q_DjOapUPgo-wgRfTQ9p1k0ckF5LEcYUO0I6dhYyn69OhVtAO14Ab-e-sgzJXeFpME_aGG-9DfpMSh1DVkmQo5BlO661TT0L4MeHfgHQ&response-X-Checksum-Sha1=ae4c3cf383ba6299a9ea654855f3664fb706a53a&response-X-Checksum-Sha2=9df7c5868b825944edc80822e818028b4123ee8cdf85ef60eb11fed235b23c79\n",
      "==> Pouring ffmpeg-3.4.2.high_sierra.bottle.tar.gz\n",
      "🍺  /Users/ben/.julia/v0.6/Homebrew/deps/usr/Cellar/ffmpeg/3.4.2: 248 files, 50.9MB\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Warning: Already linked: /Users/ben/.julia/v0.6/Homebrew/deps/usr/Cellar/ffmpeg/3.4.2\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Uninstalling gtk+3... (1,373 files, 69.2MB)\n",
      "==> Installing gtk+3 from staticfloat/juliatranslated\n",
      "==> Downloading https://homebrew.bintray.com/bottles/gtk+3-3.22.28.high_sierra.bottle.tar.gz\n",
      "==> Downloading from https://akamai.bintray.com/58/58867309a23a6bf9d2d73e1fdb16393b7f6670260a5e4318ac66ee603bc85a32?__gda__=exp=1519416360~hmac=68981a01c5763fa29b5fcf0184fd294897747684649a6bd74c3188da9c065ad0&response-content-disposition=attachment%3Bfilename%3D%22gtk%2B3-3.22.28.high_sierra.bottle.tar.gz%22&response-content-type=application%2Fgzip&requestInfo=U2FsdGVkX18z4oB869rLjXjPFpRyGOoYAZNZxE41g1YkVNMrbVxGuMcDVyK5WcoZ2NixH9zvFTrXFiM2vi00CpJfoaycGL1bDjzxM5i07OvdJFjc4EQyAxcNTGe2SzKNOGMEn7Z18hBUdo2jDRg_cA&response-X-Checksum-Sha1=85f52d225cb707de5ce8e66583da9f75c91c9bd8&response-X-Checksum-Sha2=58867309a23a6bf9d2d73e1fdb16393b7f6670260a5e4318ac66ee603bc85a32\n",
      "==> Pouring gtk+3-3.22.28.high_sierra.bottle.tar.gz\n",
      "==> /Users/ben/.julia/v0.6/Homebrew/deps/usr/opt/glib/bin/glib-compile-schemas /Users/ben/.julia/v0.6/Homebrew/deps/usr/share/glib-2.0/schemas\n",
      "🍺  /Users/ben/.julia/v0.6/Homebrew/deps/usr/Cellar/gtk+3/3.22.28: 1,373 files, 82.7MB\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Warning: Already linked: /Users/ben/.julia/v0.6/Homebrew/deps/usr/Cellar/gtk+3/3.22.28\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Uninstalling harfbuzz... (139 files, 5.3MB)\n",
      "==> Installing harfbuzz from staticfloat/juliatranslated\n",
      "==> Downloading https://homebrew.bintray.com/bottles/harfbuzz-1.7.5.high_sierra.bottle.tar.gz\n",
      "==> Downloading from https://akamai.bintray.com/0a/0a43f2277203cdbab4b0509d483593514bb8cee51dc52d28958e06d4822c85e5?__gda__=exp=1519416376~hmac=664b94a644531aaeda0688c10f12b840e140e70ef3756a000399accf7e3fd400&response-content-disposition=attachment%3Bfilename%3D%22harfbuzz-1.7.5.high_sierra.bottle.tar.gz%22&response-content-type=application%2Fgzip&requestInfo=U2FsdGVkX18oazB_24G8axITGLHx99grUTOOJBh1PlvH0nId4QzFpHqX2jCIvHu-veoYU3kcjYXGYFnk0YrhW027mz-aQns7xQOdHxnrNx9FAEN4OyvqX23SZmrKPlAkfJcWpZEDpo_cqTSEk7zsdg&response-X-Checksum-Sha1=73ff86c0c6325dce4a2cb049d2741989b1167d4a&response-X-Checksum-Sha2=0a43f2277203cdbab4b0509d483593514bb8cee51dc52d28958e06d4822c85e5\n",
      "==> Pouring harfbuzz-1.7.5.high_sierra.bottle.tar.gz\n",
      "🍺  /Users/ben/.julia/v0.6/Homebrew/deps/usr/Cellar/harfbuzz/1.7.5: 139 files, 5.4MB\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Warning: Already linked: /Users/ben/.julia/v0.6/Homebrew/deps/usr/Cellar/harfbuzz/1.7.5\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Uninstalling sqlite... (11 files, 3.0MB)\n",
      "==> Installing sqlite from staticfloat/juliatranslated\n",
      "==> Downloading https://homebrew.bintray.com/bottles/sqlite-3.22.0.high_sierra.bottle.tar.gz\n",
      "==> Downloading from https://akamai.bintray.com/b6/b6fe12786c578292ca438c4b2566057c920440b1a67bdb9f3d587e9934b2882f?__gda__=exp=1519416380~hmac=1c84cdfb3e8494255ab41da729d1c33f7afde3ad39df4c70c380cd4941925392&response-content-disposition=attachment%3Bfilename%3D%22sqlite-3.22.0.high_sierra.bottle.tar.gz%22&response-content-type=application%2Fgzip&requestInfo=U2FsdGVkX1-YWlMU7XT771ETF01I_kAiP_W_R-3mo_yjbIRUwdZvO1IoLTJWZLYfBKCNYQLr_YQJ6-xedtq1nGPStI21T8iJPwYaWw4zVcD_D9PEkPKW2peI3ADpQdV5ugb31kfBF0xzc9Ov5yhgXg&response-X-Checksum-Sha1=a9c17d46578c104ac89dc6840a5a6015beb985b2&response-X-Checksum-Sha2=b6fe12786c578292ca438c4b2566057c920440b1a67bdb9f3d587e9934b2882f\n",
      "==> Pouring sqlite-3.22.0.high_sierra.bottle.tar.gz\n",
      "==> Caveats\n",
      "This formula is keg-only, which means it was not symlinked into /Users/ben/.julia/v0.6/Homebrew/deps/usr,\n",
      "because macOS provides an older sqlite3.\n",
      "\n",
      "If you need to have this software first in your PATH run:\n",
      "  echo 'export PATH=\"/Users/ben/.julia/v0.6/Homebrew/deps/usr/opt/sqlite/bin:$PATH\"' >> ~/.zshrc\n",
      "\n",
      "For compilers to find this software you may need to set:\n",
      "    LDFLAGS:  -L/Users/ben/.julia/v0.6/Homebrew/deps/usr/opt/sqlite/lib\n",
      "    CPPFLAGS: -I/Users/ben/.julia/v0.6/Homebrew/deps/usr/opt/sqlite/include\n",
      "For pkg-config to find this software you may need to set:\n",
      "    PKG_CONFIG_PATH: /Users/ben/.julia/v0.6/Homebrew/deps/usr/opt/sqlite/lib/pkgconfig\n",
      "\n",
      "==> Summary\n",
      "🍺  /Users/ben/.julia/v0.6/Homebrew/deps/usr/Cellar/sqlite/3.22.0: 11 files, 3MB\n",
      "Uninstalling librsvg... (55 files, 5.2MB)\n",
      "==> Installing librsvg from staticfloat/juliatranslated\n",
      "==> Downloading https://homebrew.bintray.com/bottles/librsvg-2.42.2.high_sierra.bottle.tar.gz\n",
      "==> Downloading from https://akamai.bintray.com/cc/ccd7d4d609ffcacb28750b0df677d784910a3880e467e0ed10dd44b405b69983?__gda__=exp=1519416386~hmac=70787ca36e4d35940df4ad92f311ef721d6e56afc9da7eca64d2c94fa088a69d&response-content-disposition=attachment%3Bfilename%3D%22librsvg-2.42.2.high_sierra.bottle.tar.gz%22&response-content-type=application%2Fgzip&requestInfo=U2FsdGVkX1-7lNVPBDszfJWXgUGdbthVJ29nI5NnMnklOZ_rua6KhED_9gh2p-zwu7QV4RLo_WSPtwJjQ4Pe_4W2Gi88TaGfc53rvhaOpYO2NJBndlMfZ8abCmPi4v1Xeu_oJMTcLpNhJw4or3qmTQ&response-X-Checksum-Sha1=2d06c15db06b8dbd4b3ab39b3f277ef3cd6c6962&response-X-Checksum-Sha2=ccd7d4d609ffcacb28750b0df677d784910a3880e467e0ed10dd44b405b69983\n",
      "==> Pouring librsvg-2.42.2.high_sierra.bottle.tar.gz\n",
      "==> /Users/ben/.julia/v0.6/Homebrew/deps/usr/opt/gdk-pixbuf/bin/gdk-pixbuf-query-loaders --update-cache\n",
      "🍺  /Users/ben/.julia/v0.6/Homebrew/deps/usr/Cellar/librsvg/2.42.2: 55 files, 5MB\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Warning: Already linked: /Users/ben/.julia/v0.6/Homebrew/deps/usr/Cellar/librsvg/2.42.2\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Uninstalling x264... (11 files, 3.2MB)\n",
      "==> Installing x264 from staticfloat/juliatranslated\n",
      "==> Downloading https://homebrew.bintray.com/bottles/x264-r2854.high_sierra.bottle.tar.gz\n",
      "==> Downloading from https://akamai.bintray.com/2e/2e2cf99b9f06181e9d1bbd549e3426717d4fb93fc12fe2cd7f295b92f7b28a55?__gda__=exp=1519416391~hmac=20b572fde5d880863257b66ccd79a0d19397f3fe17aa8f0d57d736b095d061a2&response-content-disposition=attachment%3Bfilename%3D%22x264-r2854.high_sierra.bottle.tar.gz%22&response-content-type=application%2Fgzip&requestInfo=U2FsdGVkX1-RyqH1dstwO1QcVisFHBCtMArSQIY0D4fXbBhHCmFXxM_H59_Y6rIgv3JM-YY_lVNOFkJPn8gHzeRa_qrBHH0lx8ojX3Aj_nnK3bsPnAdFUvyod_uZt86ze_WFRpF2vU6fsppOAk6Y6A&response-X-Checksum-Sha1=5a34dd990d85c2269a4fbfd0910f5b9b0cc1e964&response-X-Checksum-Sha2=2e2cf99b9f06181e9d1bbd549e3426717d4fb93fc12fe2cd7f295b92f7b28a55\n",
      "==> Pouring x264-r2854.high_sierra.bottle.tar.gz\n",
      "🍺  /Users/ben/.julia/v0.6/Homebrew/deps/usr/Cellar/x264/r2854: 11 files, 3.4MB\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Warning: Already linked: /Users/ben/.julia/v0.6/Homebrew/deps/usr/Cellar/x264/r2854\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Uninstalling git... (1,495 files, 34.5MB)\n",
      "==> Installing git from staticfloat/juliatranslated\n",
      "==> Downloading https://homebrew.bintray.com/bottles/git-2.16.2.high_sierra.bottle.tar.gz\n",
      "==> Downloading from https://akamai.bintray.com/02/0222b2e2fef8adff1feb479c003987c392c7a4eb9b23eccd6160d56aa732e1c2?__gda__=exp=1519416395~hmac=135accf5ebcbe93af51e0c435017ce6229e892870b48365afe390ff356945abd&response-content-disposition=attachment%3Bfilename%3D%22git-2.16.2.high_sierra.bottle.tar.gz%22&response-content-type=application%2Fgzip&requestInfo=U2FsdGVkX18vNVw_1YEnONGQ1JXyRVZRmbQ2Pq3PW3QT2k63vk4WPyWauOoOX_hYoR7mknwGQBzJR4yck7vMBm8yBLs1jMY50_c1rLQOO18Z26pKLQpbMay3XOvw1H19SniHFjsL0Y_F7umR36-mNA&response-X-Checksum-Sha1=0976a7b1cec7cd5e51ee279536b1a072767c9fb9&response-X-Checksum-Sha2=0222b2e2fef8adff1feb479c003987c392c7a4eb9b23eccd6160d56aa732e1c2\n",
      "==> Pouring git-2.16.2.high_sierra.bottle.tar.gz\n",
      "==> Caveats\n",
      "Bash completion has been installed to:\n",
      "  /Users/ben/.julia/v0.6/Homebrew/deps/usr/etc/bash_completion.d\n",
      "\n",
      "zsh completions and functions have been installed to:\n",
      "  /Users/ben/.julia/v0.6/Homebrew/deps/usr/share/zsh/site-functions\n",
      "\n",
      "Emacs Lisp files have been installed to:\n",
      "  /Users/ben/.julia/v0.6/Homebrew/deps/usr/share/emacs/site-lisp/git\n",
      "==> Summary\n",
      "🍺  /Users/ben/.julia/v0.6/Homebrew/deps/usr/Cellar/git/2.16.2: 1,496 files, 34.5MB\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Warning: Already linked: /Users/ben/.julia/v0.6/Homebrew/deps/usr/Cellar/git/2.16.2\n",
      "\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mBuilding MbedTLS\n",
      "\u001b[39m"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Using system libraries...\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mBuilding Blink\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mBuilding Cairo\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mBuilding Conda\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mBuilding ZMQ\n",
      "\u001b[39mError: No available formula with the name \"zeromq@3.2\" \n",
      "Error: No available formula with the name \"zeromq@3.2\" \n",
      "\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mBuilding IJulia\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mInstalling Jupyter via the Conda package.\n",
      "\u001b[39m"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Fetching package metadata .........\n",
      "Solving package specifications: .\n",
      "\n",
      "Package plan for installation in environment /Users/ben/.julia/v0.6/Conda/deps/usr:\n",
      "\n",
      "The following packages will be UPDATED:\n",
      "\n",
      "    conda: 4.3.25-py27_0 --> 4.3.30-py27h407ed3a_0\n",
      "\n",
      "conda-4.3.30-p 100% |###############################| Time: 0:00:00   3.44 MB/s\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mFound Jupyter version 4.3.0: /Users/ben/.julia/v0.6/Conda/deps/usr/bin/jupyter\n",
      "\u001b[39m  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current\n",
      "                                 Dload  Upload   Total   Spent    Left  Speed\n",
      "100 12309  100 12309    0     0  39238      0 --:--:-- --:--:-- --:--:-- 39325\n",
      "\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mInstalling Julia kernelspec julia-0.6\n",
      "\u001b[39m[InstallKernelSpec] Removing existing kernelspec in /Users/ben/Library/Jupyter/kernels/julia-0.6\n",
      "[InstallKernelSpec] Installed kernelspec julia-0.6 in /Users/ben/Library/Jupyter/kernels/julia-0.6\n",
      "\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mBuilding Interact\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mEnabling widgetsnbextension\n",
      "\u001b[39mEnabling notebook extension jupyter-js-widgets/extension...\n",
      "      - Validating: \u001b[32mOK\u001b[0m\n",
      "\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mipywidgets version found: 6.0.0\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mA compatible version of ipywidgets was found. All good.\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mBuilding PkgBenchmark\n",
      "\u001b[39m\u001b[36mPkgBenchmark has been completely rewritten. Please see https://github.com/JuliaCI/PkgBenchmark.jl/\n",
      "for updated documentation and examples. Code written for previous versions of PkgBenchmark is\n",
      "unlikely to still work.\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mBuilding PlotlyJS\n",
      "\u001b[39m  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current\n",
      "                                 Dload  Upload   Total   Spent    Left  Speed\n",
      "100 1155k    0 1155k    0     0   399k      0 --:--:--  0:00:02 --:--:--  399k\n",
      "  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current\n",
      "                                 Dload  Upload   Total   Spent    Left  Speed\n",
      "100 2350k  100 2350k    0     0   535k      0  0:00:04  0:00:04 --:--:--  535k\n",
      "\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mBuilding SpecialFunctions\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mNo packages to install, update or remove\n",
      "\u001b[39m\u001b[1m\u001b[36mINFO: \u001b[39m\u001b[22m\u001b[36mPackage database updated\n",
      "\u001b[39m"
     ]
    }
   ],
   "source": [
    "Pkg.update()\n",
    "Pkg.add(\"ResumableFunctions\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Use ResumableFunctions.jl"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "using ResumableFunctions"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Define `@resumable function`"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "g (generic function with 1 method)"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "@resumable function g(x)\n",
    "    if isa(x, Number)\n",
    "        @yield x\n",
    "    else\n",
    "        for i in x\n",
    "            for j in g(i)\n",
    "                @yield j\n",
    "            end\n",
    "        end\n",
    "    end\n",
    "end"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Test"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0\n",
      "1\n",
      "2\n",
      "3\n",
      "4\n",
      "5\n",
      "6\n"
     ]
    }
   ],
   "source": [
    "a = [0, [1,2,3],[4,5,6]]\n",
    "\n",
    "for i in g(a)\n",
    "    println(i)\n",
    "end"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Julia 0.7",
   "language": "julia",
   "name": "julia-0.7"
  },
  "language_info": {
   "file_extension": ".jl",
   "mimetype": "application/julia",
   "name": "julia",
   "version": "0.7"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
